# -*- coding: utf-8 -*-
# @File      :异常捕获
# @Email     :15218701897@qq.com
# @Author    :liaogan
# @Datetime  :2022/6/14 18:04


"""
else语句的作用是：
当try的代码块中，没有出现异常时，执行else。出现异常时，不执行else。
比如下面这段代码中，当输入1时，try语句块不会出现异常；当输入0时，则会出现异常。

finally语句的作用是：
无论try…except是否出现异常，都会执行finally语句。
我们还是通过下面一段代码去执行验证。下面这段代码中，当输入1时，try语句块不会出现异常；当输入0时，则会出现异常
"""

try:
    name = input('要输入的数字：')
    result=100/int(name)
    print(result)
# except ZeroDivisionError as e:#捕获为0的异常
#     print(f'不能除以0，异常：{e}')
#
# except ValueError as e:#捕获非数字异常
#     print(f'无效数字:{e}')

except Exception as err:
    print(f"捕获所有异常{err}")
else:
    print('输出else语句')


finally:
    print('都要输出')

# num=input('输入数字：')
# res=100/int(num)
# print(res)

# ttt="./data/test1.txt"
# try:
#    fo = open(ttt, "w",encoding='utf-8')
#    fo.write("这是我的异常处理测试文件")
#
# # except Exception as e:
# #     print (f"Exception found:{e}")
# except IOError:
#     print("错误：找不到文件或读取数据")
# else:
#    print("对文件执行写操作成功")
#    fo.close()





# try:
#     one_num = int(input("请输入一个数字:"))
#     print(f"输入的数字是：{one_num}")
#     num = 5/one_num
#     print(f"结果为{num},try中代码结束")
#
# except Exception as err:
#     print(f"捕获到的异常信息是：{err}")
#
# else:
#     print("执行else语句")
#
# finally:
#     print("执行finally语句")
#
# print('继续执行代码')